package org.netty.push.core.proto.handler;

import org.netty.push.core.proto.BaseMessage;

import io.netty.channel.ChannelHandlerContext;

/**
 * 消息处理接口
 * 
 * @author zzh
 *
 */
public interface MessageHandler<T extends BaseMessage> {

	/**
	 * 消息处理方法
	 * @param ctx  
	 * @See ChannelHandlerContext
	 * @param msg
	 */
	void handle(ChannelHandlerContext ctx, T msg);

	/**
	 *  判断msg 是不是当前消息处理器处理的消息内容
	 * @param msg
	 * @return
	 */
	boolean supported(Object msg);
}
